我想跟踪用户在网站上完成特定操作所花费的时间(包括服务器响应时间和呈现时间(与DOM相关的更改))。我已经在Angular框架中尝试过了。为此,我正在考虑记录用户开始操作的时间,并且我想记下操作完成的时间。作为开发人员,我会知道用户何时开始事件以及用户何时完成搜索、过滤、编辑、添加、删除等操作。因此,我们可以对它们进行区分。但是要记录每个Action,我们必须在应用程序的每个部分编写代码。我们可以创建一个插件,以便我们可以在任何地方使用它,而不是在任何地方编写相同的代码来跟踪用户的时间。有什么方法可以创建它吗?或者是否有任何工具可以实现此功能? 最佳答案
关闭。这个问题是opinion-based.它目前不接受答案。想要改进这个问题?更新问题,以便editingthispost可以用事实和引用来回答它.关闭9年前。Improvethisquestion我目前正在使用GoogleAnalyticsEventTracking跟踪我的Web应用程序中的用户界面交互。由于我们的系统目前无法记录客户端错误,作为快速修复,我已将事件跟踪代码放入catchblock和网络服务错误处理程序中。还有人这样做吗?它是否有效,或者您会推荐其他东西吗?谢谢
我正在尝试在生产网站上记录javascript错误。到目前为止,它与网站中包含的以下代码配合得很好:functioncatcherr(errorMessage,url,line){varparameters="msg="+escape(errorMessage)+"&url="+escape(url)+"&line="+escape(line);newImage().src="/error.gif?"+parameters;returnfalse;};window.onerror=catcherr;我正在尝试向错误添加堆栈跟踪以获取更多信息。这基本上适用于以下想法,包括上面的功能:tr
当通过BabelJS运行这段代码时:classFooErrorextendsError{constructor(message){super(message);}}leterror=newFooError('foo');console.log(error,error.message,error.stack);输出{}这不是我所期望的。运行error=newError('foo');console.log(error,error.message,error.stack);产生{}fooError:fooateval(evalat(https://babeljs.io/scripts/re
背景我使用Backbone.js已经有一段时间了,它让我印象深刻的一个方面是它如何允许我简化、抽象和重用DOM元素作为“View”。我已尝试通读一些带注释的源代码并熟悉JQuery,但对DOM如何在更深层次上工作知之甚少。问题Backbone.JS如何在不为它们分配id、类或其他属性的情况下将DOM元素绑定(bind)到View?即ItemoneItemtwoItemthree我喜欢Backbone这样做,并且想知道它如何做到这一点! 最佳答案 在javascript中,变量可以保存对DOM的某个元素的引用(即“引用”的编程事物),
我想创建一个简单的跟踪脚本来提供给我的客户。与GA类似但非常基础。要求是像googleAnalytics那样给客户一个简单的js脚本使第3方站点从主站点加载的js文件中的大部分逻辑在PHP中收集信息并存储它我还想不通的是,有什么方法可以做到这一点?据我所知,谷歌正在加载一个gif文件,存储信息并解析日志。如果我做类似的事情,将数据发送到php文件,Ajax跨站点策略将阻止我,据我所知。那么什么是干净的方法呢?(我不需要代码,只需要它背后的逻辑) 最佳答案 方法a-网络错误:给用户这个:让php返回header("content-ty
这是我的main.js文件/*GoogleAnalytics*/(function(){varga=document.createElement('script');ga.type='text/javascript';ga.async=true;ga.src=('https:'==document.location.protocol?'https://ssl':'http://www')+'.google-analytics.com/ga.js';vars=document.getElementsByTagName('script')[0];s.parentNode.insertBef
Firefox推出了一项名为Trackingprotection的功能在v42.0中。它会阻止多个跟踪脚本,例如GoogleAnalytics、Marketo、LinkedIn等。我试图通过navigator.DoNotTrack检测它,但在两种情况下它都返回unspecified-在常规模式下浏览,在私有(private)模式下浏览-使用Firefox42.0在Mac上。由于navigator.DoNotTrack失败,我如何在JavaScript中检测用户是否正在查看启用了跟踪保护的网站? 最佳答案 navigator.dono
每次应用程序在Backbone.js中切换URL时,我都需要运行一个函数,并且我需要知道URL已更改为的主题标签。我假设有一个我可以绑定(bind)到的事件,但我一直无法弄清楚要绑定(bind)到哪个事件和哪个对象。具体来说,我想将新URL发送到分析应用程序。 最佳答案 我知道这是一篇旧文章,但就像@kirk所建议的那样,Backbone.js已经构建了它。Backbone.history.on("all",function(route,router){//console.log(window.location.hash);});我
我一直致力于为仅在Chrome上运行的Web应用程序添加一些更好的错误日志记录。本质上,我希望能够捕获和存储堆栈跟踪。对于同步代码,这工作正常,但对于异步代码,我遇到了一些奇怪的事情。本质上,Chrome似乎会记录其他信息作为其异步堆栈跟踪功能的一部分,但我一直无法弄清楚如何捕获它。代码,在Chrome浏览器控制台中运行:lete;leta=()=>Promise.resolve(null).then(()=>(null).foo).catch(err=>{console.info(err);console.error(err);e=err;})letb=()=>a();letc=()